home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 2000 August: Tool Chest / Dev.CD Aug 00 TC Disk 2.toast / pc / sample code / quicktime / quicktime for java / imagefile / src / imagefiledemo.java
Encoding:
Java Source  |  2000-06-23  |  1.5 KB  |  61 lines

  1. /*
  2.  * QuickTime for Java SDK Sample Code
  3.  
  4.    Usage subject to restrictions in SDK License Agreement
  5.  * Copyright: © 1996-1999 Apple Computer, Inc.
  6.  
  7.  */
  8. import java.awt.*;
  9. import java.awt.event.*;
  10.  
  11. import quicktime.*;
  12. import quicktime.std.StdQTConstants;
  13. import quicktime.std.image.GraphicsImporter;
  14. import quicktime.io.QTFile;
  15.  
  16. import quicktime.app.display.QTCanvas;
  17. import quicktime.app.image.*;
  18.  
  19. /** QuickTime Graphics Importer and Codec demo */
  20. public class ImageFileDemo extends Frame implements StdQTConstants {        
  21.     
  22.     public static void main (String args[]) {
  23.         try {
  24.             QTSession.open();
  25.  
  26.             int[] fileTypes = { kQTFileTypeGIF, kQTFileTypeJPEG, kQTFileTypePicture };
  27.             QTFile qtf = QTFile.standardGetFilePreview (fileTypes);
  28.  
  29.             ImageFileDemo ifd = new ImageFileDemo (qtf);
  30.             ifd.pack();
  31.             ifd.show();
  32.             ifd.toFront();
  33.         } catch (QTException e) {
  34.             if (e.errorCode() != Errors.userCanceledErr)
  35.                 e.printStackTrace();
  36.             QTSession.close();
  37.         }
  38.     }
  39.  
  40.     ImageFileDemo (QTFile qtf) throws QTException {
  41.         super (qtf.getName());
  42.         
  43.         QTCanvas canv = new QTCanvas();
  44.         add (canv, "Center");
  45.         
  46.         GraphicsImporterDrawer myImageFile = new GraphicsImporterDrawer (qtf);        
  47.         canv.setClient (myImageFile, true);
  48.  
  49.         addWindowListener(new WindowAdapter () {
  50.             public void windowClosing (WindowEvent e) {
  51.                 QTSession.close();
  52.                 dispose();
  53.             }
  54.  
  55.             public void windowClosed (WindowEvent e) {
  56.                 System.exit(0);
  57.             }
  58.         });
  59.     }
  60. }
  61.